package com.example.smartcity_poverty.ui.poverty

import android.content.Intent
import android.os.Bundle
import androidx.fragment.app.Fragment
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import androidx.recyclerview.widget.GridLayoutManager
import androidx.recyclerview.widget.LinearLayoutManager
import com.example.smartcity_poverty.R
import com.example.smartcity_poverty.ui.poverty.activity.ShowMoreOneActivity
import com.example.smartcity_poverty.ui.poverty.adapter.PtHotAdapter
import com.example.smartcity_poverty.ui.poverty.adapter.PtMoreAdapter
import com.example.smartcity_poverty.ui.poverty.adapter.PtNewsAdapter
import com.example.smartcity_poverty.ui.poverty.model.PtHotEntity
import com.example.smartcity_poverty.ui.poverty.model.PtMoreEntity
import com.example.smartcity_poverty.ui.poverty.model.PtNewsEntity
import com.youth.banner.adapter.BannerImageAdapter
import com.youth.banner.holder.BannerImageHolder
import com.youth.banner.indicator.CircleIndicator
import kotlinx.android.synthetic.main.fragment_poverty.*

/**
 * 精准扶贫模块开发
 * 此模块需要自主设计ui填充数据
 */
class PovertyFragment : Fragment() {

    companion object {
        val PovertyList = mutableMapOf<String, String>(
            "汝南县板店乡：精准扶贫 入户走访暖人心" to "“最近家里情况怎么样，发展养殖业有没有困难.......”11月8日，汝南县板店乡党委书记王留印来到该乡刘营村脱贫户马忠于家走访，与马忠于夫妇亲切交谈。",
            "精准扶贫零距离 入户走访暖人心" to "“最近生活怎么样啊？”“一年能挣多少钱”“家里有什么困难吗？”“孩子学习怎么样”……结对帮扶的贫困户家里情况怎么样，日子过得好不好，桩桩件件的小事，成了夏河县人民法院领导们心头的挂念。",
            "入户走访贫困户，精准扶贫暖人心" to "10月12日，在第七个国家扶贫日即将来临之际，矿区法院党组书记、院长姚胜利参加了省法院在临夏县尹集镇大滩村举行的教育扶贫2020年“天平助学金”捐助仪式，为临夏县莘莘学子送上金秋最温暖的关怀。",
            "精准扶贫在行动 走访入户暖人心" to "10月17日是我国第7个扶贫日，也是第28个国际消除贫困日。推进脱贫攻坚是深入扎实开展持久的“精准扶贫”活动的重要工作内容。\n" +
                    "10月15日下午，湖北三峡技师学院党委书记胡玉梅，副书记、院长周玉堂，带领学院七个支部党员及党外知识分子代表一行86人，前往点军三岔口扶贫点，开展“弘扬伟大抗疫精神，决胜脱贫攻坚”主题党日活动。\n"
        )
    }

    override fun onCreateView(
        inflater: LayoutInflater, container: ViewGroup?,
        savedInstanceState: Bundle?
    ): View? {
        return inflater.inflate(R.layout.fragment_poverty, container, false)
    }


    override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
        super.onViewCreated(view, savedInstanceState)

        // 轮播图
        banner()

        // 服务入口
        more()

        // 入户走访
        hot()

        // 新闻入口
        news()
    }



    /**
     * 新闻
     */
    private fun news() {
        ptNewsRV.apply {
            this.layoutManager = LinearLayoutManager(context)
            this.adapter = PtNewsAdapter(ArrayList<PtNewsEntity>().apply {
                this.add(
                    PtNewsEntity(
                        R.mipmap.n1,
                        "汝南县板店乡：精准扶贫 入户走访暖人心",
                        PovertyList["汝南县板店乡：精准扶贫 入户走访暖人心"].toString(),
                        "2023-3-22"
                    )
                )

                this.add(
                    PtNewsEntity(
                        R.mipmap.n2,
                        "精准扶贫零距离 入户走访暖人心",
                        PovertyList["精准扶贫零距离 入户走访暖人心"].toString(),
                        "2023-3-22"
                    )
                )


                this.add(
                    PtNewsEntity(
                        R.mipmap.n3,
                        "入户走访贫困户，精准扶贫暖人心",
                        PovertyList["入户走访贫困户，精准扶贫暖人心"].toString(),
                        "2023-3-22"
                    )
                )

                this.add(
                    PtNewsEntity(
                        R.mipmap.n4,
                        "精准扶贫在行动 走访入户暖人心",
                        PovertyList["精准扶贫在行动 走访入户暖人心"].toString(),
                        "2023-3-22"
                    )
                )
            }, R.layout.re_item_poverty_news)
        }
    }

    /**
     * 入户走访
     */
    private fun hot() {
        PtHotRv.apply {
            this.layoutManager = LinearLayoutManager(context).apply {
                this.orientation = LinearLayoutManager.HORIZONTAL
            }
            this.adapter = PtHotAdapter(ArrayList<PtHotEntity>().apply {
                this.add(PtHotEntity(R.mipmap.k1,"汝南县板店乡：精准扶贫 入户走访暖人心"))
                this.add(PtHotEntity(R.mipmap.g1,"精准扶贫零距离 入户走访暖人心"))
            }, R.layout.re_item_poverty_hot)
        }
    }


    /**
     * 服务入口
     */
    private fun more() {
        ptMoreRv.apply {
            this.layoutManager = GridLayoutManager(context, 4)
            this.adapter = PtMoreAdapter(ArrayList<PtMoreEntity>().apply {
                this.add(PtMoreEntity(R.mipmap.po1, "扶贫案例"))
                this.add(PtMoreEntity(R.mipmap.po2, "村情村貌"))
                this.add(PtMoreEntity(R.mipmap.po3, "收到求助"))
                this.add(PtMoreEntity(R.mipmap.po5, "案例发布"))
            }, R.layout.re_item_poverty_more)
        }
    }


    /**
     * 轮播图
     */
    private fun banner() {
        povertyBanner.apply {
            this.adapter = object : BannerImageAdapter<Int>(
                listOf(
                    R.mipmap.poverty2,
                    R.mipmap.poverty1,
                    R.mipmap.poverty3
                )
            ) {
                override fun onBindView(p0: BannerImageHolder?, p1: Int?, p2: Int, p3: Int) {
                    p0?.imageView?.setImageResource(p1!!)
                }
            }
            this.addBannerLifecycleObserver(this@PovertyFragment).indicator =
                CircleIndicator(context)
            this.setBannerRound(25f)
            this.setOnBannerListener { _, position ->
                when (position) {
                    0 -> startActivity(Intent(context, ShowMoreOneActivity::class.java))
                    1 -> startActivity(Intent(context, ShowMoreOneActivity::class.java))
                    else -> startActivity(Intent(context, ShowMoreOneActivity::class.java))
                }
            }
        }
    }
}